﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DTO;
using BUS;

namespace QUANLYDETAI
{
    public partial class frm_ChuyenNganh : DevExpress.XtraEditors.XtraForm
    {
        public frm_ChuyenNganh()
        {
            InitializeComponent();
        }
        public bool TTThemSua = true;
        private string macn_cu;
        public void load()
        {
            grid_ChuyenNganh.DataSource = BUS_ChuyenNganh.SelectChuyenNganh();
            txtcn_MCN.Enabled = false;
            txtcn_TenCN.Enabled = false;
            btncn_update.Enabled = btncn_Out.Enabled = false;
            if (gridChuyenNganh.RowCount < 1)
            {
                btncn_update.Enabled = btncn_Out.Enabled = false;
            }
            else
                btncn_update.Enabled = btncn_Out.Enabled = true;
            btncn_them.Enabled = true;
            btncn_xoa.Enabled = true;
            btncn_Sua.Enabled = true;
            Bindings();
        }
        public void Bindings()
        {
            txtcn_MCN.DataBindings.Clear();
            txtcn_MCN.DataBindings.Add("Text", gridChuyenNganh.DataSource, "MaCN");


            txtcn_TenCN.DataBindings.Clear();
            txtcn_TenCN.DataBindings.Add("Text", gridChuyenNganh.DataSource, "TenCN");


        }
        private void btncn_them_Click(object sender, EventArgs e)
        {
            btncn_them.Enabled = false;
            btncn_Sua.Enabled = false;
            btncn_xoa.Enabled = false;
            btncn_update.Enabled = true;
            btncn_Out.Enabled = true;

            txtcn_MCN.DataBindings.Clear();
            txtcn_TenCN.DataBindings.Clear();

            txtcn_MCN.Text = "";
            txtcn_TenCN.Text = "";

            txtcn_MCN.Enabled = true;
            txtcn_TenCN.Enabled = true;

            TTThemSua = true;
        }

        private void btncn_xoa_Click(object sender, EventArgs e)
        {
            bool kq;
            if (MessageBox.Show("Bạn có chắc sẽ xóa lớp " + txtcn_MCN.Text + " hay không, nếu xóa thì toàn bộ thông thông tin liên quan sẽ mất.", "Thông báo", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                kq = BUS_ChuyenNganh.deleteChuyenNganh(txtcn_MCN.Text);
                if (!kq)
                    XtraMessageBox.Show("Xóa thất bại", "Thông báo");
                else
                {
                    load();
                }
            }
            else
                load();
           
        }

        private void btncn_Sua_Click(object sender, EventArgs e)
        {

            macn_cu = txtcn_MCN.Text;
            btncn_them.Enabled = false;
            btncn_Sua.Enabled = false;
            btncn_xoa.Enabled = false;
            btncn_update.Enabled = true;
            btncn_Out.Enabled = true;

            txtcn_MCN.DataBindings.Clear();
            txtcn_TenCN.DataBindings.Clear();


            txtcn_MCN.Enabled = true;
            txtcn_TenCN.Enabled = true;

            TTThemSua = false;
        }
        public bool KTDulieu()
        {
            if (txtcn_MCN.Text == "")
                return false;
            if (txtcn_TenCN.Text == "")
                return false;
            return true;

        }

        private void btncn_update_Click(object sender, EventArgs e)
        {
            if (!KTDulieu())
            {
                XtraMessageBox.Show("Nhập đầy đủ nga", "Thông báo");
                return;
            }
            DTO_ChuyenNganh chuyennganh = new DTO_ChuyenNganh();
            chuyennganh.MaCN = txtcn_MCN.Text;
            chuyennganh.TenCN = txtcn_TenCN.Text;

            if (TTThemSua)
            {

                if (BUS_ChuyenNganh.insertChuyenNganh(chuyennganh))
                    load();
                else
                    XtraMessageBox.Show("lỗi từ hệ thống, hãy liên hệ với bộ phận kỹ thuật, mã lỗi [simpleBt_CapNhat_Click]", "Thông báo");
            }
            else
            {
                if (BUS_ChuyenNganh.updateChuyennganh(chuyennganh, macn_cu))
                    load();
                else
                    XtraMessageBox.Show("lỗi từ hệ thống, hãy liên hệ với bộ phận kỹ thuật, mã lỗi [simpleBt_CapNhat_Click]", "Thông báo");
            }
        }

        private void btncn_Out_Click(object sender, EventArgs e)
        {
            load();
        }

        private void frm_ChuyenNganh_Load(object sender, EventArgs e)
        {

        }
    }
}